package org.jeecgframework.web.system.pojo.base;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import java.lang.String;
import java.lang.Double;
import java.lang.Integer;
import java.math.BigDecimal;

import javax.xml.soap.Text;

import java.sql.Blob;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

import javax.persistence.SequenceGenerator;

import org.jeecgframework.poi.excel.annotation.Excel;

/**   
 * @Title: Entity
 * @Description: 巡检预约
 * @author onlineGenerator
 * @date 2016-08-22 14:35:02
 * @version V1.0   
 *
 */
@Entity
@Table(name = "cbs_inspection_appointment", schema = "")
@SuppressWarnings("serial")
public class CbsInspectionAppointmentEntity implements java.io.Serializable {
	/**主键*/
	private java.lang.String id;

	/**巡检预约ID*/
	private String InAppId;
	
	/**联系人*/
	@Excel(name="联系人")
	private java.lang.String contactName;
	/**电话*/
	@Excel(name="电话")
	private java.lang.String phone;
	/**邮箱*/
	@Excel(name="邮箱")
	private java.lang.String mail;
	/**期望巡检时间*/
	@Excel(name="期望巡检时间")
	private java.util.Date expectDate;
	/**说明*/
	@Excel(name="说明")
	private java.lang.String content;
	/**创建人名称*/
	private java.lang.String createName;
	/**创建人登录名称*/
	private java.lang.String createBy;
	/**创建日期*/
	private java.util.Date createDate;
	/**更新人名称*/
	private java.lang.String updateName;
	/**更新人登录名称*/
	private java.lang.String updateBy;
	/**更新日期*/
	private java.util.Date updateDate;
	/**状态 0.草稿 1.审批中 2.已完成 3.已取消 4.处理中*/
	private String status;
	
	/**影院关联*/
	private ZyCinemaEntity cinema;
	
	/**设备关联*/
	private List<CbsInspectionAppointmentEsEntity> esList;

    public Integer expectSection;

    /*0:微信，1：PC*/
    public String source;
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=36)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  联系人
	 */
	@Column(name ="CONTACT_NAME",nullable=true,length=32)
	public java.lang.String getContactName(){
		return this.contactName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  联系人
	 */
	public void setContactName(java.lang.String contactName){
		this.contactName = contactName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  电话
	 */
	@Column(name ="PHONE",nullable=true,length=32)
	public java.lang.String getPhone(){
		return this.phone;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  电话
	 */
	public void setPhone(java.lang.String phone){
		this.phone = phone;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  邮箱
	 */
	@Column(name ="MAIL",nullable=true,length=80)
	public java.lang.String getMail(){
		return this.mail;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  邮箱
	 */
	public void setMail(java.lang.String mail){
		this.mail = mail;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  期望巡检时间
	 */
	@Column(name ="EXPECT_DATE",nullable=true,length=32)
	public java.util.Date getExpectDate(){
		return this.expectDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  期望巡检时间
	 */
	public void setExpectDate(java.util.Date expectDate){
		this.expectDate = expectDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  说明
	 */
	@Column(name ="CONTENT",nullable=true,length=32)
	public java.lang.String getContent(){
		return this.content;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  说明
	 */
	public void setContent(java.lang.String content){
		this.content = content;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人名称
	 */
	@Column(name ="CREATE_NAME",nullable=true,length=50)
	public java.lang.String getCreateName(){
		return this.createName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人名称
	 */
	public void setCreateName(java.lang.String createName){
		this.createName = createName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人登录名称
	 */
	@Column(name ="CREATE_BY",nullable=true,length=50)
	public java.lang.String getCreateBy(){
		return this.createBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人登录名称
	 */
	public void setCreateBy(java.lang.String createBy){
		this.createBy = createBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  创建日期
	 */
	@Column(name ="CREATE_DATE",nullable=true,length=20)
	public java.util.Date getCreateDate(){
		return this.createDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  创建日期
	 */
	public void setCreateDate(java.util.Date createDate){
		this.createDate = createDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人名称
	 */
	@Column(name ="UPDATE_NAME",nullable=true,length=50)
	public java.lang.String getUpdateName(){
		return this.updateName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人名称
	 */
	public void setUpdateName(java.lang.String updateName){
		this.updateName = updateName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人登录名称
	 */
	@Column(name ="UPDATE_BY",nullable=true,length=50)
	public java.lang.String getUpdateBy(){
		return this.updateBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人登录名称
	 */
	public void setUpdateBy(java.lang.String updateBy){
		this.updateBy = updateBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  更新日期
	 */
	@Column(name ="UPDATE_DATE",nullable=true,length=20)
	public java.util.Date getUpdateDate(){
		return this.updateDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  更新日期
	 */
	public void setUpdateDate(java.util.Date updateDate){
		this.updateDate = updateDate;
	}
	/**
	 * 影院关联
	 */
	@ManyToOne(fetch=FetchType.LAZY)
	@JoinColumn(name="CINEMA_ID")
	public ZyCinemaEntity getCinema() {
		return cinema;
	}
	
	/**
	 * 影院关联
	 */
	public void setCinema(ZyCinemaEntity cinema) {
		this.cinema = cinema;
	}
	@OneToMany(mappedBy="inspectionAppointment",fetch=FetchType.LAZY)
	public List<CbsInspectionAppointmentEsEntity> getEsList() {
		return esList;
	}

	public void setEsList(List<CbsInspectionAppointmentEsEntity> esList) {
		this.esList = esList;
	}
	@Column(name ="status",nullable=true,length=20)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	@Column(name="in_app_id")
	public String getInAppId() {
		return InAppId;
	}

	public void setInAppId(String inAppId) {
		InAppId = inAppId;
	}

    @Column(name = "expect_section")
    public Integer getExpectSection() {
        return expectSection;
    }

    public void setExpectSection(Integer expectSection) {
        this.expectSection = expectSection;
    }

    @Column(name = "source")
    public String getSource() {
        return source;
    }

    public void setSource(String source) {
        this.source = source;
    }
}
